import request from '@/utils/request.js'

// 用户登录
export function login(data) {
  return request({
    url: 'user/login',
    method: 'POST',
    data
  })
}

// 获取用户详情信息 userinfo
export function getUserInfo(userId) {
  return request({
    url: `user/info/${userId}`,
    method: 'GET'
  })
}

// 获取验证码
export function getCode(data) {
  return request({
    url: 'user/getCode',
    method: 'POST',
    data
  })
}


// 用户注册
export function register(data) {
  return request({
    url: '/api/user/register',
    method: 'POST',
    data
  })
}

// // 获取用户信息
// export function getUserInfo() {
//   return request({
//     url: '/api/user/info',
//     method: 'GET'
//   })
// }

// 更新用户资料
export function updateUserInfo(data) {
  return request({
    url: 'user/update/userbasic',
    method: 'PUT',
    data
  })
}

// 更新用户头像
export function updateAvatar(data) {
  return request({
    url: '/user/avatar',
    method: 'POST',
    data
  })
}
// 上传用户头像
export function uploadAvatar(data) {
  return request({
    url: '/user/upload/avatar',
    method: 'POST',
    data
  })
}

// 获取用户收藏列表
export function getUserFavorites() {
  return request({
    url: '/api/user/favorites',
    method: 'GET'
  })
}

// 重置密码
export function resetPassword(data) {
  return request({
    url: 'user/password/reset',
    method: 'POST',
    data
  })
}

// 修改密码
export function changePassword(data) {
  return request({
    url: 'user/password/update',
    method: 'PUT',
    data
  })
}

// 设置密码（通过短信验证码）
export function setPasswordBySms(data) {
  return request({
    url: 'user/password/set',
    method: 'POST',
    data
  })
}

// 检查用户是否已设置密码
export function checkUserPassword(userId) {
  return request({
    url: `user/password/check/${userId}`,
    method: 'GET'
  })
}

// 获取用户会员信息
export function getMembershipInfo() {
  return request({
    url: '/api/user/membership',
    method: 'GET'
  })
}



// 查询实名认证状态
export function getRealNameAuthStatus(userId) {
  return request({
    url: `user/realname/status/${userId}`,
    method: 'GET'
  })
}

// 导出userApi对象
export const userApi = {
  login,
  register,
  // getUserInfo,
  updateUserInfo,
  updateAvatar,
  getUserFavorites,
  resetPassword,
  changePassword,
  setPasswordBySms,
  checkUserPassword,
  getMembershipInfo,
  getCode,
  getUserInfo,
  uploadAvatar,
  getRealNameAuthStatus
}